<html><head><META http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><title>The Apache Tomcat 5.5 Servlet/JSP Container - Tomcat Setup</title><meta content="Remy Maucherat" name="author"><style media="print" type="text/css">
			.noPrint {display: none;}
			td#mainBody {width: 100%;}
		</style></head><body vlink="#525D76" alink="#525D76" link="#525D76" text="#000000" bgcolor="#ffffff"><table cellspacing="0" width="100%" border="0"><!--PAGE HEADER--><tr><td><!--PROJECT LOGO--><a href="http://tomcat.apache.org/"><img border="0" alt="
      The Apache Tomcat Servlet/JSP Container
    " align="right" src="./../images/tomcat.gif"></a></td><td><h1><font face="arial,helvetica,sanserif">The Apache Tomcat 5.5 Servlet/JSP Container</font></h1></td><td><!--APACHE LOGO--><a href="http://www.apache.org/"><img border="0" alt="Apache Logo" align="right" src="./../images/asf-logo.gif"></a></td></tr></table><table cellspacing="4" width="100%" border="0"><!--HEADER SEPARATOR--><tr><td colspan="2"><hr size="1" noshade="noshade"></td></tr><tr><!--RIGHT SIDE MAIN BODY--><td id="mainBody" align="left" valign="top" width="80%"><h1>The Apache Tomcat 5.5 Servlet/JSP Container</h1><h2>Tomcat Setup</h2><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Table of Contents"><!--()--></a><a name="Table_of_Contents"><strong>Table of Contents</strong></a></font></td></tr><tr><td><blockquote>
<ul><li><a href="#Introduction">Introduction</a></li><li><a href="#Windows">Windows</a></li><li><a href="#Unix_daemon">Unix daemon</a></li></ul>
</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Introduction"><strong>Introduction</strong></a></font></td></tr><tr><td><blockquote>
    <p>
      This document introduces several ways to set up Tomcat for running
      on different platforms.  Please note that some advanced setup issues
      are not covered here: the full distribution (ZIP file or tarball) 
      includes a file called
      RUNNING.txt which discusses these issues.  We encourage you to refer
      to it if the information below does not answer some of your questions.
    </p>
  </blockquote></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Windows"><strong>Windows</strong></a></font></td></tr><tr><td><blockquote>

    <p>
      Installing Tomcat on Windows can be done easily using the Windows 
      installer. Its interface and functionality is similar to other wizard
      based installers, with only a few items of interest.
    </p>

    <p>
      <ul>
        <li><strong>Installation as a service</strong>: Tomcat will be 
            installed as a Windows
            NT/2k/XP service no matter what setting is selected. Using the
            checkbox on the component page sets the service as "auto"
            startup, so that Tomcat is automatically started when Windows
            starts. For optimal security, the service should be run as a
            separate user, with reduced permissions (see the Windows Services
            administration tool and its documentation).</li>
        <li><strong>Java location</strong>: The installer will use the registry
            or the JAVA_HOME environment variable to determine the base path
            of a J2SE 5 JRE.
            </li>
        <li><strong>Tray icon</strong>: When Tomcat is run as a service, there
            will be a tray icon visible.  Note that
            when choosing to run Tomcat at the end of installation, the tray
            icon will be loaded at the same time.</li>
        <li>Refer to the
            <a href="windows-service-howto.html">Windows Service HOW-TO</a>
            for information on how to manage Tomcat as Windows NT service.
            </li>            
      </ul>
    </p>

    <p>The installer will create shortcuts allowing starting and configuring 
       Tomcat. It is important to note that the Tomcat administration web 
       application can only be used when Tomcat is running.</p>

    <p>If using a J2SE 1.4 JRE, the compatibility package must be downloaded and
       expanded inside the folder where Tomcat was installed.</p>

  </blockquote></td></tr></table><table cellpadding="2" cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" color="#ffffff"><a name="Unix daemon"><!--()--></a><a name="Unix_daemon"><strong>Unix daemon</strong></a></font></td></tr><tr><td><blockquote>

    <p>Tomcat can be run as a daemon using the jsvc tool from the 
       commons-daemon project. Source tarballs for jsvc are included with the
       Tomcat binaries, and need to be compiled. Building jsvc requires
       a C ANSI compiler (such as GCC), GNU Autoconf, and a JDK.</p>

    <p>Before running the script, the <code>JAVA_HOME</code> environment
       variable should be set to the base path of the JDK. Alternately, when
       calling the <code>./configure</code> script, the path of the JDK may
       be specified using the <code>--with-java</code> parameter, such as
       <code>./configure --with-java=/usr/java</code>.</p>

    <p>Using the following commands should result in a compiled jsvc binary,
       located in the <code>$CATALINA_HOME/bin</code> folder. This assumes
       that GNU TAR is used, and that <code>CATALINA_HOME</code> is an 
       environment variable pointing to the base path of the Tomcat 
       installation.</p>
  
    <p>Please note that you should use the GNU make (gmake) instead of
       the native BSD make on FreeBSD systems.</p>


<div align="left"><table border="0" cellpadding="0" cellspacing="4"><tr><td height="1" width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" alt="" src="./../images/void.gif"></td><td height="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" alt="" src="./../images/void.gif"></td><td height="1" width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" alt="" src="./../images/void.gif"></td></tr><tr><td width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" alt="" src="./../images/void.gif"></td><td height="1" bgcolor="#ffffff"><pre>
    cd $CATALINA_HOME/bin
    tar xvfz commons-deamon-native.tar.gz
    cd commons-daemon-1.0.x-native-src/unix
    ./configure
    make
    cp jsvc ../..
    cd ../..
</pre></td><td width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" alt="" src="./../images/void.gif"></td></tr><tr><td height="1" width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" alt="" src="./../images/void.gif"></td><td height="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" alt="" src="./../images/void.gif"></td><td height="1" width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" alt="" src="./../images/void.gif"></td></tr></table></div>

    <p>Tomcat can then be run as a daemon using the following commands.</p>

<div align="left"><table border="0" cellpadding="0" cellspacing="4"><tr><td height="1" width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" alt="" src="./../images/void.gif"></td><td height="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" alt="" src="./../images/void.gif"></td><td height="1" width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" alt="" src="./../images/void.gif"></td></tr><tr><td width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" alt="" src="./../images/void.gif"></td><td height="1" bgcolor="#ffffff"><pre>
    cd $CATALINA_HOME
    ./bin/jsvc -Djava.endorsed.dirs=./common/endorsed -cp ./bin/bootstrap.jar \
        -outfile ./logs/catalina.out -errfile ./logs/catalina.err \
        org.apache.catalina.startup.Bootstrap
</pre></td><td width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" alt="" src="./../images/void.gif"></td></tr><tr><td height="1" width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" alt="" src="./../images/void.gif"></td><td height="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" alt="" src="./../images/void.gif"></td><td height="1" width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" alt="" src="./../images/void.gif"></td></tr></table></div>

    <p>jsvc has other useful parameters, such as <code>-user</code> which 
       causes it to switch to another user after the daemon initialization is
       complete. This allows, for example, running Tomcat as a non privileged
       user while still being able to use privileged ports. 
       <code>jsvc --help</code> will return the full jsvc usage 
       information. In particular, the <code>-debug</code> option is useful
       to debug issues running jsvc.</p>

    <p>The file <code>
       $CATALINA_HOME/bin/commons-daemon-1.0.x-native-src/unix/native/Tomcat5.sh
       </code> can be used as a template for starting Tomcat automatically at
       boot time from <code>/etc/init.d</code>.</p>

    <p>Note that the Commons-Daemon JAR file must be on your runtime classpath 
       to run Tomcat in this manner.  The Commons-Daemon JAR file is in the
       Class-Path entry of the bootstrap.jar manifest, but if you get a
       ClassNotFoundException or a NoClassDefFoundError for a Commons-Daemon
       class, add the Commons-Daemon JAR to the -cp argument when launching
       jsvc.</p> 

  </blockquote></td></tr></table></td></tr><!--FOOTER SEPARATOR--><tr><td colspan="2"><hr size="1" noshade="noshade"></td></tr><!--PAGE FOOTER--><tr><td colspan="2"><div align="center"><font size="-1" color="#525D76"><em>
        Copyright &copy; 1999-2011, Apache Software Foundation
        </em></font></div></td></tr></table></body></html>